package com.gh.manager.train.domain;

import java.util.Date;
import java.util.Objects;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.gh.common.annotation.Excel;
import com.gh.common.core.domain.BaseEntity;

/**
 * 训练对象 gh_train
 * 
 * @author andas
 * @date 2024-12-12
 */
public class GhTrain extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /**  */
    private Long trainId;

    /** 训练类型 */
    @Excel(name = "训练类型")
    private Long type;

    /** 状态（0进行中，1已结束） */
    @Excel(name = "状态", readConverterExp = "0=进行中，1已结束")
    private Long status;

    /** 训练名 */
    @Excel(name = "训练名")
    private String name;

    /** 训练内容 */
    @Excel(name = "训练内容")
    private String content;

    /** 报名结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "报名结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date overtime;

    /** 训练时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "训练时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date time;



    /** 训练地点 */
    @Excel(name = "训练地点")
    private String address;

    /** 训练人数 */
    @Excel(name = "训练人数")
    private Long number;

    /** 训练总结 */
    @Excel(name = "训练总结")
    private String summarize;


    public String getGrade() {
        return grade;
    }

    public void setGrade(String grade) {
        this.grade = grade;
    }

    private String grade;

    /**  */
    private String def1;

    /**  */
    private String def2;

    /**  */
    private String def3;

    /**  */
    private String def4;

    /**  */
    private String def5;

    public void setTrainId(Long trainId) 
    {
        this.trainId = trainId;
    }

    public Long getTrainId() 
    {
        return trainId;
    }
    public void setType(Long type) 
    {
        this.type = type;
    }

    public Long getType() 
    {
        return type;
    }
    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public void setContent(String content) 
    {
        this.content = content;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }
    public String getContent() 
    {
        return content;
    }
    public void setOvertime(Date overtime) 
    {
        this.overtime = overtime;
    }

    public Date getOvertime() 
    {
        return overtime;
    }
    public void setTime(Date time) 
    {
        this.time = time;
    }

    public Date getTime() 
    {
        return time;
    }
    public void setNumber(Long number) 
    {
        this.number = number;
    }

    public Long getNumber() 
    {
        return number;
    }
    public void setSummarize(String summarize) 
    {
        this.summarize = summarize;
    }

    public String getSummarize() 
    {
        return summarize;
    }
    public void setDef1(String def1) 
    {
        this.def1 = def1;
    }

    public String getDef1() 
    {
        return def1;
    }
    public void setDef2(String def2) 
    {
        this.def2 = def2;
    }

    public String getDef2() 
    {
        return def2;
    }
    public void setDef3(String def3) 
    {
        this.def3 = def3;
    }

    public String getDef3() 
    {
        return def3;
    }
    public void setDef4(String def4) 
    {
        this.def4 = def4;
    }

    public String getDef4() 
    {
        return def4;
    }
    public void setDef5(String def5) 
    {
        this.def5 = def5;
    }

    public String getDef5() 
    {
        return def5;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("trainId", getTrainId())
            .append("type", getType())
            .append("status", getStatus())
            .append("name", getName())
            .append("content", getContent())
            .append("overtime", getOvertime())
            .append("time", getTime())
            .append("number", getNumber())
                .append("grade", getGrade())
                .append("address", getAddress())
            .append("summarize", getSummarize())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("def1", getDef1())
            .append("def2", getDef2())
            .append("def3", getDef3())
            .append("def4", getDef4())
            .append("def5", getDef5())
            .toString();
    }
}
